<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Promise---解决异步回调的问题</title>
    
</head>
<body>
<!--<script>-->
<!--    let a = 3;-->
<!--   let promise = new Promise(function (resolve,reject) {-->
<!--        /**-->
<!--         * 两个参数-->
<!--         * 1.resolve ，成功时候调用-->
<!--         * 2.reject，失败时调用-->
<!--         */-->
<!--        if (a == 10){-->
<!--            resolve('成功');-->
<!--        }else {-->
<!--            reject('失败');-->
<!--        }-->
<!--    });-->
<!--    promise.then(res => {-->
<!--        console.log(res);-->
<!--    },err => {-->
<!--        console.log(err);-->
<!--    })-->
<!--</script>-->


<!--<script>-->
<!--    /**-->
<!--     * 1.Promise.resolve('aa'):将现有的东西，转成一个Promise对象，resolve状态，成功的状态-->
<!--     * 2.Promise.reject('aaa'):将现有的东西，转成一个Promise对象，失败的状态-->
<!--     * 一下两种写法都是一个意思-->
<!--     */-->

<!--    let p1 = Promise.resolve('aaa');-->
<!--    p1.then(res => {-->
<!--        console.log(res);-->
<!--    })-->



<!--    let p2 = new Promise(resolve => {-->
<!--        resolve('aaa');-->
<!--    })-->
<!--    p2.then(res => {-->
<!--        console.log(res);-->
<!--    })-->

<!--</script>-->


<script>
    /**
     * Promise.all([p1,p2,p3]):吧promise打包，扔到一个数组里，打包完还是一个promise对象
     * 必须确保，所有的promise对象都是resolve状态即成功的状态
     * @type {Promise<string>}
     */

    let p1 = Promise.resolve('aaaa');
    let p2 = Promise.resolve('bbbb');
    let p3 = Promise.resolve('cccc');
    Promise.all([p1,p2,p3]).then(res => {
       let [res1,res2,res3] = res;
       console.log(res1,res2,res3);
    })


</script>

</body>
</html>